From: kfraser@localhost.localdomain Date: Mon, 23 Oct 2006 11:23:57 +0000 (+0100) Subject: [XM] Allow empty resource strings (e.g., when creating an empty CDROM X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~15585^2~20 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/success//%22http:/www.example.com/cgi/success/?a=commitdiff_plain;h=1a69fbebff4aa2c712cd6f3f6b86025ef46a1190;p=xen.git [XM] Allow empty resource strings (e.g., when creating an empty CDROM device). Also clean up error/acces-denied path. Signed-off-by: Keir Fraser --- diff --git a/tools/python/xen/util/security.py b/tools/python/xen/util/security.py index e617ddf894..91c0badd74 100644 --- a/tools/python/xen/util/security.py +++ b/tools/python/xen/util/security.py @@ -601,8 +601,15 @@ def unify_resname(resource): """Makes all resource locations absolute. In case of physical resources, '/dev/' is added to local file names""" + if not resource: + return resource + # sanity check on resource name - (type, resfile) = resource.split(":") + try: + (type, resfile) = resource.split(":") + except: + err("Resource spec '%s' contains no ':' delimiter" % resource) + if type == "phy": if not resfile.startswith("/"): resfile = "/dev/" + resfile diff --git a/tools/python/xen/xm/create.py b/tools/python/xen/xm/create.py index 4b5cd3db7c..48486d8bfc 100644 --- a/tools/python/xen/xm/create.py +++ b/tools/python/xen/xm/create.py @@ -1143,6 +1143,8 @@ def config_security_check(config, verbose): except security.ACMError: print " %s: DENIED" % (resource) (res_label, res_policy) = security.get_res_label(resource) + if not res_label: + res_label = "" print " --> res:"+res_label+" ("+res_policy+")" print " --> dom:"+domain_label+" ("+domain_policy+")" answer = 0 @@ -1181,7 +1183,7 @@ def main(argv): PrettyPrint.prettyprint(config) else: if not create_security_check(config): - raise OptionError('Security Configuration prevents domain from starting') + raise security.ACMError('Security Configuration prevents domain from starting') else: dom = make_domain(opts, config) if opts.vals.console_autoconnect: